﻿using Payroll.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Payroll.BusinessLogic.Package
{
    public partial interface IPackageService
    {
        /// <summary>
        /// Saves the specified p.
        /// </summary>
        /// <param name="p">The p.</param>
        /// <returns></returns>
        int Save(Package p);
        /// <summary>
        /// Gets the package by id.
        /// </summary>
        /// <param name="Packid">The packid.</param>
        /// <returns></returns>
        Package GetPackageById(int Packid);
        /// <summary>
        /// Gets the name of the package by.
        /// </summary>
        /// <param name="name">The name.</param>
        /// <returns></returns>
        Package GetPackageByName(string name = "");
        /// <summary>
        /// Gets the package by code.
        /// </summary>
        /// <param name="code">The code.</param>
        /// <returns></returns>
        Package GetPackageByCode(string code = "");
        PagedList<Package> GetAllPackage(PackageSearch filter, int pageSize = int.MaxValue, int pageIndex = 0);
        List<Package> GetAllPackage();
        int Delete(List<int> List);
        void Delete(string packagePricesID);
        
        int SavePackagePrice(List<PackagePrice> List);
        List<PackagePrice> GetAllPackagePrice(PackageSearch filter, int pageSize = int.MaxValue, int pageIndex = 0);
    }
}
